#include<iostream>
#include<vector>
#include<cstdio>
#include<algorithm>
using namespace std;

void mysort(int &w,int &h){
    if(w > h){
        int tmp = w;
        w = h;
        h = tmp;
    }
}

bool vecsort(vector<int>& a,vector<int>& b){
    if(a[0] == b[0]){
        return a[1] <= b[1];
    }
    return a[0] <= b[0];
}

// 六个长宽，看看是否可以构成长方体
int main(){
    int w,h;
    vector<vector<int>> wh;
    int count = 0;
    while(scanf("%d %d",&w,&h) != 1){
        count++;
        mysort(w,h);
        wh.push_back(vector<int>{w,h});
        if(count == 6){
            // 此时可以进行判断了
            sort(wh.begin(),wh.end(),vecsort);
            // 现在已经是
            // 2(x,y)
            // 2(x,z)
            // 2(y,z)
            // 保证x<y<z
            // 满足上述条件就是可以的
            if(    wh[0][0] == wh[1][0] 
                && wh[0][0] == wh[2][0] 
                && wh[0][0] == wh[3][0] 
                
                && wh[0][1] == wh[1][1]
                && wh[0][1] == wh[4][0]
                && wh[0][1] == wh[5][0]
                
                && wh[2][1] == wh[3][1] 
                && wh[2][1] == wh[4][1]
                && wh[2][1] == wh[5][1]){
                    cout<<"POSSIBLE\n";
                }
                else {
                    cout<<"IMPOSSIBLE\n";
                }

            wh.clear();
            count = 0;
        }
    }

    return 0;
}
